home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 1 (Walnut Creek)
/
Aminet - June 1993 [Walnut Creek].iso
/
usenet
/
sources
/
volume89
/
fun
/
world.4
< prev
next >
Wrap
Text File
|
1989-02-02
|
50KB
|
1,736 lines
Path: xanth!nic.MR.NET!csd4.milw.wisc.edu!mailrus!ulowell!page
From: page@swan.ulowell.edu (Bob Page)
Newsgroups: comp.sources.amiga
Subject: v89i011: world - text adventure, Part04/07
Message-ID: <11527@swan.ulowell.edu>
Date: 2 Feb 89 05:04:23 GMT
Organization: University of Lowell, Computer Science Dept.
Lines: 1725
Approved: page@swan.ulowell.edu
Submitted-by: ejkst@unix.cis.pittsburgh.edu (Eric J. Kennedy)
Posting-number: Volume 89, Issue 11
Archive-name: fun/world.4
# This is a shell archive.
# Remove everything above and including the cut line.
# Then run the rest of the file through sh.
#----cut here-----cut here-----cut here-----cut here----#
#!/bin/sh
# shar: Shell Archiver
# Run the following text with /bin/sh to create:
# parser.c
# vtext.dat.ac
# This archive created: Mon Jan 30 18:06:39 1989
cat << \SHAR_EOF > parser.c
#include "parame.inc"
#include "variab.h"
#include "arrays.h"
#include "vocab.inc"
#include "verbtb.inc"
#define abs(A) ((A < 0) ? -A : A)
/* World C Version 1.00 copyright 1987 J.D.McDonald
Use as you like for non-commercial purposes, but please
leave this note, and document any changes you make as yours */
/* No apologies for all the goto's. If you can get rid of them, well,
I guess some persons are just naturally masochists */
static int typlst[4] = {VRBMIN, ADJMIN, NUNMIN, PRPMIN};
static int index[5], indx;
scan()
/*
* this function scans the input line for gross syntax errors it also expands
* special direction commands such as "ne" into their full form. it also
* works on adverbs, removes such expressions as "ask frog," etc. finally it
* puts the word numbers and types in the wrdnum and wrdtyp arrays the input
* is inbuf ,the output is wrdnum,wrdtyp,actor,adverb
*
*/
{
int result, offlg, askx, lptr0, wptr, i, lxx, errno;
result = 0;
offlg = 0;
chgact = 0;
askx = 0;
lab5:
adverb = 0;
for (i = 0; i < 30; i++) {
wrdnum[i] = 0;
wrdtyp[i] = 0;
}
/*
* wordtyp is -1 for a period,-2 comma 1 for adverb,2 verb,3 adjective,4
* noun,5 preposition numbers are type 4,and wrdnum=number+10000
*/
wptr = 0;
lab10:
lptr0 = lptr;
wscan();
/*
* on return from wscan punct contains: 0 for a word 1 for a period 2 for
* a comma 3 for a number 4 if an illegal character 5 if a number follows
* a letter directly 6 if a letter follows a number directly
*/
if (punct == 1)
return (result);
else if (punct == 4)
goto lab9000;
else if (punct == 2)
goto lab9010;
else if (punct == 3)
goto lab9019;
else if (punct == 5)
goto lab9020;
else if (punct == 6)
goto lab9140;
else;
/* it's a real word, so find out what it is */
find(VOCMAX);
/* discard buzzword */
if (indx > 0 && indx <= BUZMAX)
goto lab10;
if (indx == 0)
goto lab9040;
if ((indx >= NORTH && indx <= NORTHW) || indx == UP
|| indx == DOWN) {
/* yes,it's a special word */
lptr0 = lptr;
wscan();
/* check if it's all that's on the line */
if (punct != 1)
goto lab9030;
/* expand a direction word into full form */
wrdtyp[1] = 4;
wrdnum[1] = indx;
wrdnum[0] = GO;
wrdtyp[0] = 2;
wrdtyp[2] = -1;
goto lab9999;
}
if (index[0] != 0) {
if (adverb != 0)
goto lab9070;
/* adverbs are removed from the wrdtyp list and handled separately */
adverb = index[0];
if (adverb != WHERE && adverb != WHAT)
goto lab10;
if (actor == 1 || askx != ASK)
goto lab9130;
goto lab10;
}
if (index[1] == 0)
goto lab9050;
wrdtyp[wptr] = 2;
wrdnum[wptr] = index[1];
/*
* we've found the verb check for legal question
*/
if ((adverb == WHAT || adverb == WHERE) - (wrdnum[0] == IS))
goto lab9130;
if (wrdnum[0] == YELL) {
/* the player is told to use "ask" or "tell" */
lab131:
wscan();
if (punct != 1)
goto lab131;
wrdtyp[0] = 2;
wrdnum[0] = YELL;
result = 1;
return (result);
}
if (wrdnum[0] < SHIT)
goto lab200;
/*
* special handling for words which take no objects or modifiers they
* should be alone on a line. they are verbs >= shit
*/
lptr0 = lptr;
wscan();
{
if (punct == 1)
goto lab9998;
else if (punct == 5)
goto lab9120;
else
goto lab9150;
}
/* inner loop for all words after verb */
lab200:
wptr += 1;
if (wptr > 27)
goto lab9180;
lab201:
lptr0 = lptr;
wscan();
if (punct != 0)
goto lab210;
find(BUZMAX);
/* special code for "noun1 of noun2" construct */
if (indx == 4 && wrdtyp[wptr - 1] == 4)
offlg = 1;
if (indx != 0)
goto lab201;
goto lab215;
lab210:
if (punct == 4)
goto lab9000;
if (punct == 5)
goto lab9020;
if (punct == 6)
goto lab9140;
if (punct != 2)
goto lab215;
if (wrdtyp[wptr - 1] != 4)
goto lab9010;
wrdtyp[wptr] = -2;
goto lab200;
lab215:
if (wrdtyp[wptr - 1] != 2 || (wrdnum[wptr - 1] != ASK
&& wrdnum[wptr - 1] != TELL))
goto lab220;
if (punct == 3)
goto lab9019;
if (punct != 0)
goto lab9010;
if (actor != 1)
goto lab9100;
/*
* this code is to set up addressing a second "person" the phrases "ask
* frog" or "tell frog" etc are discarded and the variable "actor" tells
* us who is addressed
*/
askx = wrdnum[wptr - 1];
find(VOCMAX);
if ((index[3] != 0) &&
(index[3] < ROBOT || index[3] > FERRET))
goto lab9090;
if (index[3] == 0)
goto lab9160;
actor = index[3];
lptr0 = lptr;
chgact = 1;
wscan();
if (punct != 2)
goto lab9110;
goto lab5;
/* code for numbers inputted in a statement */
lab220:
if (punct != 3)
goto lab240;
wrdtyp[wptr] = 4;
wrdnum[wptr] = three[0] + 10000;
goto lab200;
/* all regular words go here */
lab240:
if (punct != 1)
goto lab250;
wrdtyp[wptr] = -1;
goto lab9999;
lab250:
find(VOCMAX);
if (indx == 0)
goto lab9040;
/* special code for "of" handler */
if (offlg) {
offlg = 0;
if (index[3] != 0 && wrdtyp[wptr - 2] != 3) {
/* exchange two nouns and tell parser the first is an adjective */
wrdtyp[wptr] = wrdtyp[wptr - 1];
wrdnum[wptr] = wrdnum[wptr - 1];
wrdtyp[wptr - 1] = 3;
wrdnum[wptr - 1] = index[3];
if (wrdnum[wptr] == PHOTOG && wrdnum[wptr - 1] == FERRET) {
wrdnum[wptr - 1] = FAMILY;
}
goto lab200;
}
else
goto lab9200;
}
if (indx != AND)
goto lab270;
if (wrdtyp[wptr - 1] == -2)
goto lab201;
if (wrdtyp[wptr - 1] != 4)
goto lab9120;
wrdtyp[wptr] = -2;
goto lab200;
lab270:
if (index[1] != 0 && index[0] == 0 && index[2] == 0
&& index[3] == 0 && index[4] == 0)
goto lab9080;
if (index[0] == 0)
goto lab280;
if (adverb != 0)
goto lab9070;
adverb = indx;
if (adverb == WHERE || adverb == WHAT)
goto lab9130;
goto lab201;
/* at this point the word must be an adjectine, noun or preposition */
lab280:
if (wrdtyp[wptr - 1] == 3 && index[2] != 0)
goto lab9170;
if (index[2] != 0) {
wrdtyp[wptr] = 3;
wrdnum[wptr] = index[2];
} else if (index[3] != 0) {
wrdtyp[wptr] = 4;
wrdnum[wptr] = index[3];
} else {
wrdtyp[wptr] = 5;
wrdnum[wptr] = index[4];
}
if ((wrdtyp[wptr] == 4 && wrdtyp[wptr - 1] == 3) &&
wrdnum[wptr] < SAPPHI)
goto lab9190;
goto lab200;
/*********** error processing */
lab9000:
lxx = lptr;
errno = 1;
goto lab9900;
lab9010:
lxx = lptr;
errno = 2;
goto lab9900;
lab9019:
lptr -= 1;
lab9020:
lptr += 1;
lxx = lptr;
errno = 3;
goto lab9900;
lab9030:
lxx = lptr;
errno = 4;
goto lab9900;
lab9040:
lxx = lptr;
errno = 5;
goto lab9900;
lab9050:
lxx = lptr;
errno = 6;
goto lab9900;
lab9070:
lxx = lptr;
errno = 8;
goto lab9900;
lab9080:
lxx = lptr;
errno = 9;
goto lab9900;
lab9090:
lxx = 0;
errno = 10;
goto lab9900;
lab9100:
lxx = 0;
errno = 11;
goto lab9900;
lab9110:
lxx = lptr0 + 1;
errno = 12;
goto lab9900;
lab9120:
lxx = lptr;
errno = 13;
goto lab9900;
lab9130:
lxx = 0;
errno = 14;
goto lab9900;
lab9140:
lxx = lptr;
errno = 15;
goto lab9900;
lab9150:
lxx = lptr0;
errno = 16;
goto lab9900;
lab9160:
lxx = 0;
errno = 17;
goto lab9900;
lab9170:
lxx = lptr;
errno = 18;
goto lab9900;
lab9180:
lxx = 0;
errno = 25;
goto lab9900;
lab9190:
lxx = lptr;
errno = 107;
goto lab9900;
lab9200:
lxx = lptr;
errno = 112;
lab9900:
carerr(lxx, errno);
return (result);
lab9998:
wrdtyp[1] = -1;
lab9999:
if ((askx == TELL && (adverb == WHERE || adverb == WHAT))
|| (askx == ASK && (adverb != WHERE && adverb != WHAT)))
goto lab9130;
if (adverb == WHERE || adverb == WHAT)
dotflg = 1;
result = 1;
return (result);
}
wscan()
/*
* this routine reads the input ascii code and scans for punctuation or
* numbers and then converts the first 9 letters of a word to three integer*2
* words of radix 32 form
*/
{
char m;
static int pow32[] = {1, 32, 1024, 32768};
int plcpnt, wpnt, kchar;
if (dotflg) {
actor = 1;
dotflg = 0;
}
plcpnt = 1;
punct = 0;
wpnt = 1;
three[0] = 0;
three[1] = 0;
three[2] = 0;
while (inbuf[lptr] == ' ')
lptr++;
/*
* punct =1 is period, 2 is comma, 3 is number,4 is illegal character and
* 5 means a number directly follows a word 6 means letter follows a
* number
*/
if (inbuf[lptr] == '.' || inbuf[lptr] == '?') {
dotflg = 1;
punct = 1;
lptr += 1;
return (0);
}
if (inbuf[lptr] == ',') {
punct = 2;
lptr += 1;
return (0);
}
while (inbuf[lptr] >= '0' && inbuf[lptr] <= '9') {
/* number handling */
punct = 3;
if (three[0] < 3200)
three[0] = three[0] * 10 + inbuf[lptr] - '0';
lptr += 1;
}
if (punct == 3 && (inbuf[lptr] != '.' &&
inbuf[lptr] != ',' && inbuf[lptr] != '?' &&
inbuf[lptr] != ' '))
punct = 6;
if (punct == 3 || punct == 6)
return (0);
do {
if (!((inbuf[lptr] >= 'a' && inbuf[lptr] <= 'z') ||
(inbuf[lptr] >= 'A' && inbuf[lptr] <= 'Z'))) {
lptr += 1;
punct = 4;
return (0);
/* the actual letter packing is done here */
}
kchar = inbuf[lptr];
if (kchar >= 'a' && kchar <= 'z')
kchar -= ' ';
if (wpnt < 4)
three[wpnt - 1] = three[wpnt - 1] +
(kchar - '@') * pow32[3 - plcpnt];
plcpnt += 1;
if (plcpnt >= 4) {
wpnt += 1;
plcpnt = 1;
}
lptr += 1;
m = inbuf[lptr];
if (m == ' ' || m == ',' || m == '.' || m == '?') {
if (three[0] != 20741 || three[1] != 14336 ||
three[2] != 0)
return (0);
punct = 1;
return (0);
}
}
while (m < '0' || m > '9');
punct = 5;
return (0);
}
find(m)
int m;
{
/*
* this routine searches a vocabulary to find a word. index, on output,
* gives the position of the word in the list. synonyms do not increment
* the counter, so index*3-2 is **not** the actual pointer to the word in
* the list
*/
int i, t, k, type;
for (i = 0; i < 5; i++)
index[i] = 0;
t = 0;
indx = 0;
for (i = 1; i <= m * 3 - 2; i += 3) {
if (vocab[i] > 0)
indx += 1;
if (abs(vocab[i]) != three[0])
continue;
if (vocab[i + 1] != three[1])
continue;
if (vocab[i + 2] == three[2]) {
t = indx;
type = 1;
for (k = 1; k <= 4; k++)
if (indx >= typlst[k - 1])
type = type + 1;
index[type - 1] = indx;
}
}
indx = t;
}
lbit(arg, pow)
int arg, pow;
{
return ((arg & (1 << pow)) != 0);
}
parse()
{
/*
* subroutine parse this mess deciphers the various direct and indirect
* (i.e. second, usually, but in 'give frog cup' the frog is the i.o.)
* objects. it associates them with their respective adjectives (dobjs(i)
* and doadjs(i) correspond) butflg is set if the "all but" construct is
* encountered allflg is set if the "all" construct is enconntered the
* d.o. and i.o prepositions are put in prepdo and prepio
*/
int result, wptr, thevrb, vrbind, vdo, vio, vobj, i;
int frstaj, frstnn, errno, tprp;
result = 0;
thevrb = wrdnum[0];
vrbind = thevrb - VRBMIN + 1;
vdo = 0;
vio = 0;
vobj = 0;
if (thevrb < SHIT) {
vdo = vrbpdo[vrbind];
vio = vrbpio[vrbind];
vobj = vrbobj[vrbind];
}
butflg = 0;
allflg = 0;
numdo = 0;
prepdo = 0;
prepio = 0;
iobj = 0;
ioadj = 0;
for (i = 0; i < 12; i++) {
dobjs[i] = 0;
doadjs[i] = 0;
}
/* this block is a test for "sit down" or "get up" or "look up" etc */
if (((lbit(vobj, 1) && wrdnum[1] == DOWN) ||
(lbit(vobj, 2) && wrdnum[1] == UP)) && wrdtyp[2] == -1) {
prepdo = wrdnum[1];
result = 1;
goto finalout;
}
/* yell allows anything after it */
if (thevrb == YELL)
goto testout;
wptr = 1;
frstaj = 0;
frstnn = 0;
/* a preposition immediately follows verb */
if (wrdtyp[wptr] == 5) {
prepdo = wrdnum[wptr];
if (prepdo == BUT) {
errno = 21;
goto errorout;
}
if (!lbit(vdo, (prepdo - PRPMIN))) {
errno = 21;
goto errorout;
}
wptr += 1;
}
/*
* adjective follows verb *** special case of "terran" and "cygnan" as
* nouns
*/
if (wrdtyp[wptr] == 3) {
if ((wrdnum[wptr] == TERRAN || wrdnum[wptr] == CYGNAN)
&& wrdnum[0] == TRANSL)
wrdtyp[wptr] = 4;
else {
frstaj = wrdnum[wptr];
doadjs[0] = frstaj;
wptr += 1;
}
}
/* this takes care of the case of a verb alone on a line */
if (wrdtyp[wptr] != 4) {
if (wrdtyp[wptr] != -1) {
errno = 28;
goto errorout;
} else {
{
if (thevrb >= SHIT) {
result = 1;
goto finalout;
}
if (!lbit(vobj, 7)) {
result = 1;
goto finalout;
}
}
errno = 27;
goto errorout;
}
}
frstnn = wrdnum[wptr];
/* look at first set of objects (not always d.o.) */
dobjs[0] = frstnn;
numdo += 1;
if (numdo == 9) {
errno = 25;
goto errorout;
}
wptr += 1;
/* the following takes care of multiple objects */
if (frstnn == ALL) {
if (!lbit(vobj, 5)) {
errno = 22;
goto errorout;
}
if (frstaj != 0) {
errno = 26;
goto errorout;
}
allflg = 1;
if (wrdnum[wptr] == BUT) {
butflg = 1;
/* check for adjective before noun */
if (!(wrdtyp[wptr + 1] == 4 || (wrdtyp[wptr + 1] == 3
&& wrdtyp[wptr + 2] == 4))) {
errno = 23;
goto errorout;
}
wptr += 1;
}
}
if (butflg || (wrdtyp[wptr] == -2)) {
if (!lbit(vobj, 5)) {
errno = 22;
goto errorout;
}
mulobj(&wptr);
if (numdo > 9) {
errno = 25;
goto errorout;
}
}
/********** end multiple obj processor */
if (wrdtyp[wptr] == -1)
goto testout;
/* if the verb is "is" we may have a final adjective */
if (thevrb == IS && wrdtyp[wptr] == 3) {
doadjs[1] = wrdnum[wptr];
if (wrdtyp[wptr + 1] == -1)
goto testout;
errno = 20;
goto errorout;
}
/*
* if the next word is a noun or adjective, and verb is not "is" we have
* a non-prep indirect object such as the frog in "give frog water"
*/
if (wrdtyp[wptr] == 4 || (wrdtyp[wptr] == 3 && wrdtyp[wptr + 1]
== 4)) {
if (numdo > 1 || prepdo != 0) {
errno = 22;
goto errorout;
}
if (!lbit(vobj, 3)) {
errno = 24;
goto errorout;
}
prepio = TO;
ioadj = frstaj;
iobj = frstnn;
doadjs[0] = 0;
if (wrdtyp[wptr] == 3) {
doadjs[0] = wrdnum[wptr];
wptr += 1;
}
dobjs[0] = wrdnum[wptr];
numdo = 1;
wptr += 1;
/****** repeat the multiple obj processor */
if (dobjs[0] == ALL) {
if (!lbit(vobj, 5)) {
errno = 22;
goto errorout;
}
if (doadjs[0] != 0) {
errno = 26;
goto errorout;
}
allflg = 1;
if (wrdtyp[wptr] == 5 && wrdnum[wptr] == BUT) {
butflg = 1;
if (!(wrdtyp[wptr + 1] == 4 || (wrdtyp[wptr + 1] == 3
&& wrdtyp[wptr + 2] == 4))) {
errno = 23;
goto errorout;
}
}
}
if (butflg || wrdtyp[wptr] == -2) {
if (!lbit(vobj, 5)) {
errno = 22;
goto errorout;
}
mulobj(&wptr);
if (numdo > 9) {
errno = 25;
goto errorout;
}
}
/***** end multiple object processor */
if (wrdtyp[wptr] != -1) {
errno = 20;
goto errorout;
}
goto testout;
}
/* the only thing left that is legal is a perpositional construct */
if (wrdtyp[wptr] != 5 || wrdnum[wptr] == BUT || (
wrdtyp[wptr + 1] == 5 && wrdnum[wptr + 1] == BUT)) {
errno = 20;
goto errorout;
}
tprp = wrdnum[wptr];
wptr += 1;
/*
* check for end of line or two preps in a row (e.g. fill the bottle up
* with water)
*/
if (wrdtyp[wptr] == -1 || wrdtyp[wptr] == 5) {
if (prepdo != 0 || (!lbit(vdo, (tprp - PRPMIN)))
|| (!lbit(vobj, 0))) {
errno = 20;
goto errorout;
}
prepdo = tprp;
if (wrdtyp[wptr] == -1)
goto testout;
wptr += 1;
}
if (!lbit(vio, (wrdnum[wptr - 1] - PRPMIN))) {
errno = 20;
goto errorout;
}
prepio = wrdnum[wptr - 1];
if (wrdtyp[wptr] == 3) {
ioadj = wrdnum[wptr];
wptr += 1;
}
if (wrdtyp[wptr] != 4) {
errno = 20;
goto errorout;
}
iobj = wrdnum[wptr];
wptr += 1;
if (wrdtyp[wptr] != -1) {
errno = 20;
goto errorout;
}
testout:
if ((dobjs[0] == 0 && lbit(vobj, 7)) || (iobj == 0 &&
lbit(vobj, 6))) {
errno = 20;
goto errorout;
}
if (!lbit(vobj, 4) && dobjs[0] != 0 && prepdo == 0) {
errno = 19;
goto errorout;
}
result = 1;
finalout:
if (wrdnum[0] == AGAIN) {
for (i = 0; i < 12; i++) {
doadjs[i] = zadjs[i];
dobjs[i] = zobjs[i];
}
ioadj = ziadj;
iobj = ziobj;
prepdo = zpdo;
prepio = zpio;
actor = zactor;
adverb = zadvrb;
wrdnum[0] = zverb;
numdo = znumb;
allflg = zall;
butflg = zbut;
} else {
for (i = 0; i < 12; i++) {
zadjs[i] = doadjs[i];
zobjs[i] = dobjs[i];
}
ziadj = ioadj;
ziobj = iobj;
zpdo = prepdo;
zpio = prepio;
zactor = actor;
zadvrb = adverb;
zverb = wrdnum[0];
zall = allflg;
zbut = butflg;
}
return (result);
errorout:
carerr(0, errno);
return (result);
}
mulobj(wptr)
int *wptr;
{
/**** multiple opject subroutine from "parse" */
while (1) {
if (wrdtyp[*wptr] == 3) {
doadjs[numdo] = wrdnum[*wptr];
*wptr += 1;
}
if (wrdtyp[*wptr] == 4) {
numdo += 1;
if (numdo > 10)
return (1);
dobjs[numdo - 1] = wrdnum[*wptr];
*wptr += 1;
if (wrdtyp[*wptr] != -2)
return (1);
}
*wptr += 1;
}
}
SHAR_EOF
cat << \SHAR_EOF > vtext.dat.ac
2001 Steep trail
2002 Near top of the pass
2003 Top of the pass
2004 Branch in the trail
2005 East shore of the lake
2006 Gravel beach
2007 Forest
2008 Forest
2009 Forest
2010 Forest
2011 Forest
2012 Base of the spire
2013 Halfway up the spire
2014 Top of the spire
2015 Sandy beach
2016 Swimming at the coral beds
2017 North end of the lake
2018 Vein of minerals
2019 Southwest of a chasm
2020 Step-like rock strata
2021 Northeast of the chasm
2022 Bottom of a chasm
2023 Fern-filled ravine
2024 Beautiful waterfall
2025 Behind some horsetails
2026 Southwest of the Mars-like area
2027 Red rocks
2028 Red hill
2029 West of a deep bowl
2030 North of a small building
2031 Southwest of a deep bowl
2032 Southwest lip of the bowl
2033 South lip of the bowl
2034 Southeast lip of the bowl
2035 Northeast lip of the bowl
2036 North lip of the bowl
2037 Northwest lip of the bowl
2038 Center of the bowl
2039 South to west trail
2040 Dump
2041 Door leading into the ground
2042 Inside a small building
2043 West edge of town
2044 East edge of town
2045 South of town
2046 North-southwest trail
2047 South of a large building
2048 Bottom of a tower
2049 Top of the tower
2050 South of the Mars-jungle boundary
2051 Inside large Martian building
2052 Center of a ledge
2053 East end of the ledge
2054 West end of the ledge
2055 Precarious position
2056 Under an overhang
2057 West end of a ravine
2058 Northwest-southeast ridge
2059 Northeast-southwest path
2060 Leaf covered clearing
2061 Stone monument
2062 Forest, jungle, and green-air junction
2063 Open field
2064 Muddy jungle
2065 Jungle with rubbery trees
2066 Up a rubber tree
2067 Jungle path
2068 West of greenhouse
2069 Antenna site
2070 Greenhouse north
2071 Greenhouse center
2072 Greenhouse south
2073 Vegetable garden
2074 Fruit garden
2075 Top of spiral ramp
2076 Center of aviary roof
2077 Half way up ramp
2078 Aviary entrance
2079 Aviary center
2080 Half way up pole
2081 East of greenhouse
2082 Cacti
2083 Staircase top
2084 Staircase middle
2085 Staircase bottom
2086 Field of flowers
2087 Beehives
2088 Toolshed
2089 West of barrier
2090 (90 to 95 are never reached)
2091
2092
2093
2094
2095
2096 Bottomless pit
2097 Bottom of pit
2098 Back of cave
2099 Sculptors' studio
2100 Artist's cavern
2101 Maze
2102 Maze
2103 Maze
2104 Maze
2105 Maze
2106 Maze
2107 Maze
2108 Maze
2109 Maze
2110 Maze
2111 Maze
2112 Maze
2113 Maze
2114 Maze
2115 Maze
2116 Maze
2117 Dark tunnel
2118 Mushroom farm
2119 Round tunnel
2120 Curving passage
2121 Wet cave
2122 Underground pool
2123 Underwater
2124 Dead end
2125 Dead end
2126 Tight squeeze
2127 Dead end
2128 Gold mine
2129 Damp crawlway
2130 Large hall
2131 Ferret home
2132 Ferret nursery
2133 East-west hall
2134 Metal chamber
2135 East end of hall
2136 North end of hall
2137 Hall
2138 Hall
2139 Hall junction
2140 Hall
2141 Hall
2142 South end of hall
2143 Darkroom
2144 Library
2145 Office
2146 Control room
2147 Chemical storage
2148 Electronic storage
2149 Storage room
2150 Tool room
2151 Mine Entrance
2152 Top of mine shaft
2153 Teleportation booth
2154 Center of great hall
2155 North wall of hall
2156 Northeast corner of hall
2157 East wall of hall
2158 Southeast corner of hall
2159 South wall of hall
2160 Southwest corner of hall
2161 West wall of hall
2162 Northwest corner of hall
2163 Hallway
2164 Hallway
2165 Large anteroom
2166 Giant ship
2167 Hallway
2168 Viewing room
2169 Outer office
2170 Secret corridor
2171 Office complex
2172 Hallway
2173 Airlock door
2174 Airlock
2175 Small ship in dock
2176 Orbiting Altair
2177 Orbiting Cygnus
2178 Orbiting Vega
2179 Orbiting Deneb
2180 Orbiting Auriga
2181 In ship on Cygnus
2182 Cygnan landing site
2183 Cygnan sea-shore
2184 In ship on Auriga
2185 Aurigan landing site
2186 Aurigan control center
2187 In ship on Deneb
2188 Deneb landing platform
2189 Doorway
2190 Sitting room
3001 Chrome key
4001 Dangling from the nest on a red string is a chrome key.
4002 There is a chrome key on a string here.
3002 Blue sapphire
4001 At the end of one vein is a huge blue sapphire!
4002 There is a huge blue sapphire here.
3003 Colorful fish
4001 Swimming blissfully around, eating the tiny polyps, is a large
4001 particularly colorful fish.
4002 There is a colorful fish here.
4003 It is a very colorful fish indeed, with long fins and a long
4003 snout, suitable for eating the tiny polyps. The zoologists at
4003 your camp might like to examine it.
3004 Dead fish
4001 There is a smelly dead fish here.
4002 It is now dead and beginning to decompose. You shouldn't have
4002 kept it out of the water so long.
3005 Knapsack
4001 There is a knapsack here.
4002 It is a large red canvas backpack, with lots of room and many
4002 pockets. You could easily carry many kilograms in it.
4003 The knapsack is empty.
4004 The knapsack contains:
3006 Red shirt
4001 Lying on the ground is a red shirt.
3007 Green shirt
4001 There is a dark green shirt here.
3008 Pair of heavy boots
4001 There is a pair of heavy boots here.
4002 They are for heavy duty hiking.
3009 Canvas shoes
4001 There is a pair of light canvas shoes here.
4002 They are for rock climbing.
3010 Blue pants
4001 Lying on the ground is a pair of dark blue pants.
3011 Tan pants
4001 There is a pair of light tan pants here.
3012 Butterfly net
4001 There is a butterfly net here.
4002 The net is empty.
4003 The net contains:
3013 Plastic tube
4001 There is something which looks like a tube of toothpaste here.
4002 The label says: "Berry's Bug Dope"
4002 Repels blackflies, bees, gnats and chiggers. Not for use
4002 against worms or sharks. Ingredients: DEET (C12H17NO)
4002 23%, active ingredient. Inert ingredients:
4002 Alcohol (C2H6O) 76%, perfume 1%.
4002 The tube is empty.
3014 Instant camera
4001 There is an instant-picture camera here.
4002 It is a space-patrol issue picture-in-a-minute camera, model
4002 AN/MQ 30045-9812-773R. It's so automatic that all you have to do
4002 is say "shoot" and it will take a picture of the most
4002 interesting object around. This little beauty cost the Patrol
4002 $6,345,003.00.
4002 (Just between you and me, it's a Polaroid Snapshooter
4002 worth $49.95.)
3015 Plastic bag
4001 There is a plastic bag here.
4002 It is a collecting bag, for preserving living specimens. It is
4002 watertight but can "breathe" so living animals can be carried
4002 in it.
4003 The plastic bag is empty.
4004 The plastic bag contains:
4005 The bag is full of water.
4006 The water-filled bag contains:
3016 Crablike fossil
4001 Sticking out of the rocks is a huge crablike fossil!
4002 There is a large fossil here.
3017 Photograph of tiny pterodactyls
4001 There is a photograph of some tiny pterodactyls here.
4002 There's nothing particularly interesting about the small
4002 critters themselves (except to see how sharp their teeth are),
4002 but, behind the horsetails seems to be a cave!
3018 Photograph of Martians
4001 There is a photograph of some "Martians" here.
4002 It's a photo of those odd energy creatures. The scene is what
4002 must be a bar. One of them is getting a "charge" from an odd
4002 electrical device.
4003 The photo is of those odd electrical "Martians" playing their
4003 variant of hockey.
3019 Huge diamond
4001 One of the diamonds is loose.
4002 There is a huge diamond here.
3020 Hockey puck
4001 Lying on the ground is a hockey puck.
4002 It look like an ordinary hockey puck, about 10 centimeters in
4002 diameter. Hmmmmmmmmmmm... It seems, however, to be metallic
4002 rather than the usual plastic. It is bright and silvery.
4002 Closer scrutiny shows that it is SOLID PLATINUM!
3021 Red boulder
4001 Lying on the ground is barely liftable boulder.
3022 Green moss
4001 Lying on the ground is a large piece of soft green moss.
4002 Moss is moss is moss. It's a beautiful dark green and very
4002 soft and squishy.
3023 Glass plate
4001 A large piece of glass is lying on the ground.
4002 It's a plate of glass, about 80 centimeters in diameter, and one
4002 centimeter thick, apparently cut out of a larger piece by some
4002 inept glasscutter. It's very sturdy.
3024 Piece of wire
4001 Lying on the ground is a long piece of wire.
4002 It's very heavily insulated, except for the very ends,
4002 which are stripped clean.
4003 The wire is attached to the tower.
4004 The wire is tied to the knob in the stool.
3025 Glowing sphere
4001 Lying on the ground is a glowing sphere.
4002 The sphere is about ten centimeters in diameter. It is hollow,
4002 with rather thick walls. Inside is a smaller sphere, about one
4002 centimeter in diameter. The glow seems to emanate from the
4002 whole inner wall it, but is brighter near where the small sphere
4002 rests. It is extremely heavy for its size.
3026 Gooey latex
4001 Flowing from the bark of the tree is a large quantity of gooey
4001 latex. It flows down the tree making a rubbery coating. If you
4001 had a bucket you could collect a large quantity.
4002 There is a puddle of congealed latex here.
4003 A sticky layer of rubber covers the pole.
4004 It is a mildly viscous, very sticky liquid, with a faint
4004 turpentine-like odor. If spread in a thin layer on something
4004 it soon congeals into a smooth, pliable, and only faintly sticky
4004 coating.
4005 It seems to have congealed into a solid mass.
3027 Damaged cable
4001 There is a damaged microwave cable here.
4002 It is a green cable about one meter long with connectors on each
4002 end. The middle has been chewed almost through by a rodent.
3028 Good cable
4001 There is a good microwave cable here.
4002 It is a green cable about one meter long with connectors on
4002 each end. It is in good condition.
3029 Beautiful orchid
4001 Sitting on the bench is a potted orchid.
4002 There is a beautiful orchid here.
4003 It is violet, white and magenta, about 20 cm across, and a
4003 striking example of the evolutionary similarity of this planet
4003 and the earth.
3030 Venus flytrap
4001 Sitting on the bench is a potted Venus flytrap plant.
4002 There is a Venus flytrap here.
4003 It is green and nasty. It is obviously carnivorous, although
4003 the resemblance to it's earthly namesake is tenuous.
3031 Large cassette
4001 Lying on the ground is a large cassette for film.
4002 It is about 30 centimeters square and 1 cm thick. An indicator
4002 shows that it is properly loaded with film.
3032 Overexposed photograph
4001 There is an overexposed photograph here.
4002 Something, probably radioactive, has caused this photo to be
4002 so overexposed as to be unusable.
3033 Tomato
4001 There is a tomato here.
4002 It looks like a delicious red tomato.
3034 Lettuce
4001 There is a head of lettuce here.
4002 Lettuce is lettuce. It is not very nutritious.
3035 Cabbage
4001 There is a head of cabbage here.
4002 Cabbage is cabbage.
3036 Strawberry
4001 There is a giant strawberry here.
4002 It is 10 centimeters across and red, like a strawberry.
3037 Grapes
4001 A large bunch of grapes grows on a vine here.
4002 The is a bunch of grapes here.
4003 They are green and look good enough to eat.
3038 Sunflower seed
4001 Growing on one of the plants is a full-grown seed.
4002 There is a large sunflower seed here.
4003 It is a black seed with a metallic sheen, about 10 cm across.
4003 It is shaped like a large peach pit, with deep grooves in the
4003 sides.
3039 Bucket
4001 There is a bucket here.
4002 The bucket is full of water.
4003 The bucket is empty
4004 The bucket contains:
3040 Pitchfork
4001 There is a pitchfork here.
3041 Shovel
4001 There is a shovel here.
3042 Robot
4001 There is a robot here.
4002 There is a slightly corroded robot here.
4003 The robot is about one and a half meters tall. It is almost
4003 spherical, sitting on four lightly sprung wheels. On top is
4003 what looks like a car antenna. Beneath that is a rotating TV
4003 camera. It has two arms, one of which is a rather delicate-
4003 looking clasping device. The other is a swivel-mounted hose
4003 arrangement obviously designed for it's primary purpose of
4003 watering plants. In the control section beneath the TV eye are
4003 a microphone and a speaker.
4004 The robot is empty-handed.
4005 The robot holds:
3043 Statue
4001 There is a small statue here
4002 It is a carving of a ferret. The ferret is holding a small star.
4002 It must be some sort of religious object.
3044 Mushroom
4001 There is a huge mushroom here.
3045 Gold nugget
4001 Lying on the ground is a large nugget of gold.
3046 Photograph of wall paintings.
4001 There is a photograph of some wall paintings here.
4002 You recognize the paintings made be the ferret-artist.
3047 Photograph of ferret family
4001 There is a photo of some ferrets here.
4002 It is a typical boring family photo, not some artistic wonder.
4002 What more did you expect?
3048 Black cat
4001 Sitting on the platform is a very unhappy black cat.
4002 There is a large black cat purring contentedly here.
3049 Container of DEET
4001 There is a supply of DEET here.
4002 It is a slightly viscous, colorless, slightly sweet liquid.
3050 Container of nvglo
4001 There is a supply of nvglo here.
4002 It is a pale pink powder. It's dust makes you sneeze.
3051 Container of sbkl
4001 There is a supply of sbkl here.
4002 It consists of large white crystals.
3052 "Terran" cartridge
4001 There is a plug-in cartridge marked "Gviizm-Terran" here.
4002 It looks like it would plug into a computer.
3053 Knife
4001 There is a knife here.
3054 Hammer
4001 There is a hammer here.
3055 Screwdriver
4001 There is a screwdriver here.
3056 "Cygnan" cartridge
4001 There is a plug-in cartridge marked "Xbtmzm-Cygnan" here.
4002 It looks like it would plug into a computer.
3057 Glowing bead
4001 There is a glowing glass bead here.
4002 It is about a centimeter in diameter, glowing brightly
4002 and quite hot.
3058 Silicon "Insect"
4001 Basking in the heat of the fire is a tiny silicon insect.
4002 There is a tiny silicon insect here.
4003 It looks like a small metallic grasshopper. The body is made
4003 of a gray semi-metallic substance which looks like silicon.
4003 The wings are a transparent red, as if made of some zinc or
4003 arsenic mineral. The eyes are bright iridescent blue-green.
4003 The thing is obviously a bit cold away from the fiery pit,
4003 but not in severe distress. The whole effect is as if some piece
4003 of precious jewelry had come to life.
3059 Piece of Xray film
4001 There is a piece of used xray film here.
4002 The xray film contains no useful image.
4003 The xray film, though not well exposed, contains the image of a
4004 The xray film, though showing an image, is all jumbled up and
4004 unusable.
4005 The xray film appears to have been improperly processed.
4005 Perhaps you didn't get the chemicals in the proper places.
3060 Magnesium box
4001 There is a magnesium box here.
4002 It is a medium sized lock-box. The lock mechanism consists of
4002 a left dial and a right dial, each of which reads from 0 to 999.
4003 The box is empty.
4004 The box contains:
3061 Good disc
4001 There is a good silicon disc here.
4002 It is a round piece of silicon, with gold contact pads around
4002 the edge. It might be some sort of computer memory chip.
4002 However, due to the presence of some sort of plastic coating
4002 appearing in places on it, it clearly is not fully processed.
3062 Broken disc
4001 There is a broken silicon disc here.
4002 It is a round piece of silicon, with gold contact pads around
4002 the edge. It might be some sort of computer memory chip.
4002 It looks ready to use, except that a small piece is broken
4002 off of one corner.
3063 Violet crystal
4001 Lying on the ground is a beautiful large violet crystal.
4002 It is a large crystal, very light for its size, with a pale
4002 violet hue. It is probably spodumene, a mineral valuable for
4002 its content of lithium, which is used in your ship's drive.
3064 Chocolate egg
4001 Sitting in the doll house is a chocolate egg.
4002 There is a chocolate egg here.
3065 Silver coin
4001 There is a silver coin here.
4002 The coin has a likeness of a reptile on one side and the
4002 notation &100 on the other.
3066 Brass coin
4001 There is a brass coin here.
4002 It is marked &50.
3067 Nickel coin
4001 There is a nickel coin here.
4002 It is marked &25.
3068 Copper coin
4001 There is a copper coin here.
4002 It is marked &75.
3069 Platinum coin
4001 There is a platinum coin here.
4002 It is marked &300.
3070 Map
4001 There is a map here.
4002 The map is a star map, showing the coordinates of the stars in
4002 the vicinity. Some stars are described in script which you
4002 cannot read.
4003 This appears to be a souvenir map of the galaxy. Among prominent
4003 locations are the following:
4003 Location Right ascension Declination
4003 Altair 0556 2331
4003 Cygnus 2445 4293
4003 Vega 7552 2204
4003 Deneb 1105 6339
4003 Auriga 3111 3325
3071 Red ball
4001 There is a small red ball here.
3072 Newspaper
4001 There is a newspaper here.
4002 The writing is unintelligible.
4003 A banner at the top of the paper says "EXTRA".
4003 A subtitle says "Teleporter to Test Site #6 Reactivated".
4003 The gist of the article is that the teleportation link to
4003 the planet known as Test Site #6, which recently failed,
4003 causing district administrator Glathryx to arrive at the
4003 space station minus his third and fourth leg sets, and then
4003 became totally inoperative, has come back in operation.
4003 It seems that an intruder into the test site is suspected
4003 of causing these recent events. All persons are requested
4003 to be on the lookout for at strange alien, whose description
4003 more or less fits you.
3073 Yellow rod
4001 There is a yellow rod here.
3074 Written note
4001 There is a piece of paper with a note on it here.
4002 The note is unintelligible.
4003 The note is partly obliterated by coffee stains, but you can
4003 just make out
4003 Do it twice
4003 Door combinations ....
4003 Small ship 99 ?? ??
5001 Volcanic spire
4001 %%%%
4002 The spire, although steep, has many small rock flakes
4002 on which a person could stand if he had the right kind of shoes.
4003 Why not try to take a mountain. It's just as easy.
5002 Tiny pterodactyls
4001 They are rather cute but nasty creatures, with greenish-gray
4001 skin, venomous red eyes and long razorlike tails.
4002 That's not wise. They are vicious creatures and would bite you
4002 The bite of most animals here is fatal.
5003 Ceramic stool
4001 As you reach over to look at the stool, a spark jumps out from
4001 the knob in the center and shocks you.
4002 It's too heavy to lift.
5004 Metal knob
4001 As you get near the knob it gives you a painful but harmless
4001 electrical shock.
4002 The knob is permanently attached to its base, which is attached
4002 forever to the ground.
5005 Round window
4001 The window is about 1 meter in diameter, with plate glass.
4002 The window in the building seems to have been vandalized.
4003 The glass is quite permanently set in its frame.
5006 Round door
4001 In the front of the building is a round door which is closed.
4002 In the front of the building is a round door which is open.
4003 In the center of the door is a small metal dimple.
4004 It is attached to unreachable and unbreakable hinges.
5007 Tower
4001
4002 Have you eaten a hallucinogenic drug?
5008 Metal dimple
4001
4002 Silly!
5009 Stone cube
4001 The inscription on the monument reads:
4001 (translated into English)
4001
4001 Site of first landing party
4001 Year 21007
4001
4002 If you wish me to give you a hernia, please say so directly.
5010 Horsetails
4001 Horsetails are primitive plants, which live today on earth
4001 in wet cool forests. Today they are rather small, but
4001 millions of years ago there were ones several meters tall.
4001 On this planet the large ones are still common. Here they
4001 form a line to the sides of the waterfall, where the spray
4001 keeps them wet. The pterodactyls seem to live somewhere
4001 behind them.
4002 Horsetails are used only to scour pans, which you don't have.
5011 Metal door
4001 The door is closed.
4002 The door is open.
4003 Why would you wish to carry that around?
5012 Glass door
4001 The door is closed.
4002 The door is open.
4003 You can't take that. It's to big to get anywhere.
5013 Rabbit hole
4001 In the ground is a small hole, probably the entrance to a
4001 rabbit warren.
4002 In the ground is the gaping entrance of a bottomless pit.
4003 A hole is the absence of something. You can't take air.
5014 Louver
4001 Someone has ransacked the louver. A gaping hole remains.
4002 Why bother?
5015 Grape vines
4001 Growing here in great profusion are grape vines.
4002 There are some shriveled-up grape vines here.
4003 Useless. Useless.
5016 Slot
4001 The slot is empty.
4002 The slot contains:
4003 How can you take that, stupid?
5017 Square button
4001 Silly!
5018 Square button
4001 Not bloody likely.
5019 Round button
4001 Not until you reach Nirvana.
5020 Hexagonal button
4001 You take the little plastic cover off the button, but
4001 the underlying mechanism still works.
5021 Video screen
4001 The video screen is blank.
4002 The video screen shows the view taken by the robot's camera.
4003 It is permanently mounted on the wall.
5022 Sink
4001 The sink is empty.
4002 The sink contains:
5023 Microwave antenna
4001 The antenna is an ordinary satellite dish. It is 5 meters in
4001 diameter, white, and has a horn collector attached to the base
4001 by a cable. The cable seems to have been damaged.
4002 The antenna is an ordinary satellite dish. It is 5 meters in
4002 diameter, white, and has a horn collector attached to the base
4002 by a cable. The cable is in working order.
4003 The antenna is an ordinary satellite dish. The feed cable is
4003 missing.
4004 It weighs 4 tons!
5024 Enlarger
4001 Nothing is sitting on the enlarger base
4002 Sitting on the enlarger is:
4003 It is bolted to the wall.
5025 Rack
4001 It has vertical partitions suitable for holding things like film
4001 cassettes in a vertical position.
4002 The rack is empty.
4003 The rack contains:
4004 It is attached to the bench.
5026 Tray.
4001 The tray is empty.
4002 The tray contains:
4003 It is a molded part of the bench.
5027 Hopper
4001 The hopper is empty.
4002 The hopper contains:
4003 It can't me moved.
5028 Left funnel
4001 Silly!
5029 Middle funnel
4001 You must be suffering from a mind-scrambling drug.
5030 Right funnel
4001 That's useless.
5031 Red button
4001 It's part of a machine which is too heavy to move.
5032 Desk
4001 The desk is empty.
4002 The desk contains:
4003 It's too heavy to carry.
5033 Level indicator
4001 The level indicator shows too little water.
4002 The water level is just about right.
4003 Don't kid me!
5034 Red light
4001 The red light is on.
4002 The red light is off.
4003 The red light comes off in your hand. (Sorry, just kidding.)
5035 Green light
4001 The green light is off.
4002 The green light is on.
4003 You're getting tiring, trying to take immovable objects.
5036 Acid flow
4001 There is nothing sitting in the acid.
4002 Sitting in the acid is:
4003 The robot can't bend over far enough.
5037 Fiery pit
4001 Silly!
5038 Sulfurous mud
4001 The robot can't bend over to reach it.
5039 Violet button
4001 You can't take it.
5040 Orange button
4002 It is fixed in the wall.
5041 White button
4001 You remove it. A large Jack-in-the-box jumps out. You are so
4001 embarrassed that you carefully put the whole affair back.
5042 Blue button
4001 As you unscrew it, you notice that your nose falls off also.
4001 The switch it operated remains operational.
5043 Round recess
4001 The recess is empty.
4002 The recess contains:
4003 Take the air!
5044 Red vapor
4001 There is nothing near the red vapor.
4002 Surrounded by the red vapor is:
4003 The robot has no suitable container.
5045 Green vapor
4001 There is nothing in the green vapor.
4002 Sitting in the green vapor is:
4003 The robot has no suitable container.
5046 Frogs
4001 These are quite ordinary frogs. They are green, a bit slimy, and
4001 make a hollow krrooooookkking sound. If you could converse with
4001 them (which you can't), you would discover that their favorite
4001 topic of conversation is sex.
4002 Taken. ....... but
4002 After a few moments the frog emits a foul-smelling slimy liquid
4002 which runs down your arm and begins to itch. You drop the poor
4002 creature.
5047 Red birds
4001 They seem to be parrots.
4002 They fly amongst the highest branches of the trees, far above
4002 your reach.
5048 Beautiful birds
4001 There are dozens of birds of all colors and sizes here. They
4001 seem to like the most inaccessible branches of the small trees.
4002 They are well above your head. You can't climb the trees, as
4002 their trunks are much too weak.
5049 Beautiful birds
4001 There are several different species: big red ones, little green
4001 ones, ones with violet backs and white and yellow heads, and
4001 many others. They seems to like the highest branches of the
4001 trees.
4002 The birds are on the trees, not on the walkway where you stand.
5050 Beautiful birds.
4001 The birds are hidden by the top branches of the trees.
4002 They aren't nearby; they are out of reach in the trees.
5051 Bees
4001 Any attempt to get close to the bees results in your getting
4001 painful stings.
5052 Cactus
4001 They are much too big and prickly.
5053 Doll house
4001 It is large and ornate, about 2 meters tall, with four stories.
4001 There are the usual windows and doors through which the ferret
4001 children put their dolls.
4002 It is too big to get out the door.
5054 Waterfall
4001 Sorry, there is no pot of gold at the end of the rainbow. There
4001 isn't even any rainbow, just lots of water.
4002 Have you perhaps been eating cactus hallucinogenic drugs?
5055 Vending machine
4001 There is a vending machine here.
4002 It looks exactly like the machines used on earth to dispense
4002 candy. The contents look like red balls about one centimeter
4002 in diameter. The label says "Ozmtfztv Krooh". It has a slot
4002 labeled &300.
4003 It looks exactly like the machines used on earth to dispense
4003 candy. The contents look like red balls about one centimeter
4003 in diameter. The label says "Language Pills". It has a slot
4003 labeled &300.
4004 It is fastened to the wall.
5056 Slot
4001 Fat chance.
5057 Vending machine
4001 There is a vending machine here.
4002 It looks exactly like the machines used on earth to dispense
4002 newspapers. Inside is a supply of papers. The money slot is
4002 labeled &25.
4003 It is fastened to the wall.
5058 Slot
4001 Fat chance.
5059 Vending machine
4001 There is a vending machine here.
4002 It is a slot machine. That is, it has a slot for any size
4002 coin and three windows through which can be seen images of
4002 various fruits and occasionally a pot of money. It does
4002 seem to be missing the lever necessary to make it a
4002 "One armed bandit".
4003 You think perhaps to take it to a quiet place and blow it
4003 open? Sorry, it won't budge.
5060 Slot
4001 Fat chance
5061 Vending machine
4001 There is a vending machine here.
4002 It appears to be offering maps for sale. A slot in it is
4002 marked &75.
4003 It is attached to the wall.
5062 Slot
4001 Fat chance.
5063 Large machine
4001 Read the room description for information.
4002 It is too heavy
5064 Orange door
4001 The orange door is shut.
4002 The orange door is open.
4003 Silly!
5065 Pink door
4001 The pink door is shut.
4002 Fat chance!
5066 Blue door
4001 The blue door is shut.
4002 The blue door is open.
4003 It's fixed top the ship.
5067 Orange clip
4001 The orange clip is empty.
4002 The orange clip contains:
4003 No way.
5068 Violet clip
4001 The violet clip is empty.
4002 The violet clip holds:
4003 Silly!
5069 Yellow clip
4001 The yellow clip is empty.
4002 The yellow clip contains:
4003 Not in this life!
5070 Blue clip
4001 The blue clip is empty.
4002 The blue clip holds:
4003 You break your fingernail but not the clip.
5071 File cabinet
4001 The file cabinet holds useless papers.
4002 In addition to junk the cabinet holds:
4003 It is glued to the floor.
5072 Green button
4001 Behind the file cabinets is a green button.
4002 Silly!
5073 Large mural
4001 The south wall of the room is completely filled with a large
4001 mural.
4002 The mural has slid partially aside to reveal a secret passage
4002 leading south.
4003 The mural shows a picture of one of the large star clusters
4003 visible out the viewing ports. You notice that the left side
4003 is somewhat scuffed up.
4004 You might as well take the air.
5074 Dummy
4001 ****
5075 ****
9999
SHAR_EOF
# End of shell archive
exit 0
--
Bob Page, U of Lowell CS Dept. page@swan.ulowell.edu ulowell!page
Have five nice days.